<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 9">
<meta name=Originator content="Microsoft Word 9">
<link rel=File-List href="./AppendixH_files/filelist.xml">
<title>Appendix H</title>
<style>
<!--
 /* Font Definitions */
@font-face
	{font-family:Tahoma;
	panose-1:2 11 6 4 3 5 4 4 2 4;
	mso-font-charset:0;
	mso-generic-font-family:swiss;
	mso-font-pitch:variable;
	mso-font-signature:1627421319 -2147483648 8 0 66047 0;}
@font-face
	{font-family:"Microsoft Sans Serif";
	panose-1:2 11 6 4 2 2 2 2 2 4;
	mso-font-charset:0;
	mso-generic-font-family:swiss;
	mso-font-pitch:variable;
	mso-font-signature:1627421663 -2147483648 8 0 66047 0;}
 /* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{mso-style-parent:"";
	margin:0in;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:10.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:windowtext;}
h1
	{mso-style-next:Normal;
	margin-top:0in;
	margin-right:-.35pt;
	margin-bottom:0in;
	margin-left:0in;
	margin-bottom:.0001pt;
	text-align:justify;
	mso-pagination:widow-orphan;
	page-break-after:avoid;
	mso-outline-level:1;
	font-size:11.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	color:black;
	mso-font-kerning:0pt;
	mso-ansi-language:EN-GB;
	font-weight:normal;
	text-decoration:underline;
	text-underline:single;}
h2
	{mso-style-next:Normal;
	margin-top:0in;
	margin-right:-.35pt;
	margin-bottom:0in;
	margin-left:0in;
	margin-bottom:.0001pt;
	text-align:center;
	mso-pagination:widow-orphan;
	page-break-after:avoid;
	mso-outline-level:2;
	font-size:11.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	color:black;
	mso-ansi-language:EN-GB;
	font-weight:normal;
	font-style:italic;
	mso-bidi-font-style:normal;}
h3
	{mso-style-next:Normal;
	margin-top:0in;
	margin-right:-.35pt;
	margin-bottom:0in;
	margin-left:0in;
	margin-bottom:.0001pt;
	text-align:justify;
	mso-pagination:widow-orphan;
	page-break-after:avoid;
	mso-outline-level:3;
	font-size:14.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	color:black;
	mso-ansi-language:EN-GB;
	font-weight:normal;}
h4
	{mso-style-next:Normal;
	margin-top:0in;
	margin-right:-.35pt;
	margin-bottom:0in;
	margin-left:0in;
	margin-bottom:.0001pt;
	text-align:justify;
	mso-pagination:widow-orphan;
	page-break-after:avoid;
	mso-outline-level:4;
	font-size:11.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	color:black;
	mso-ansi-language:EN-GB;
	font-weight:bold;
	mso-bidi-font-weight:normal;
	text-decoration:underline;
	text-underline:single;}
h5
	{mso-style-next:Normal;
	margin-top:0in;
	margin-right:-.35pt;
	margin-bottom:0in;
	margin-left:0in;
	margin-bottom:.0001pt;
	text-align:justify;
	mso-pagination:widow-orphan;
	page-break-after:avoid;
	mso-outline-level:5;
	font-size:14.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	color:black;
	mso-ansi-language:EN-GB;
	font-weight:bold;
	mso-bidi-font-weight:normal;
	text-decoration:underline;
	text-underline:single;}
h6
	{mso-style-next:Normal;
	margin-top:0in;
	margin-right:-.35pt;
	margin-bottom:0in;
	margin-left:0in;
	margin-bottom:.0001pt;
	text-align:justify;
	text-indent:.5in;
	mso-pagination:widow-orphan;
	page-break-after:avoid;
	mso-outline-level:6;
	font-size:11.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	color:black;
	mso-ansi-language:EN-GB;
	font-weight:normal;
	font-style:italic;
	mso-bidi-font-style:normal;}
p.MsoHeading7, li.MsoHeading7, div.MsoHeading7
	{mso-style-next:Normal;
	margin-top:0in;
	margin-right:-.35pt;
	margin-bottom:0in;
	margin-left:0in;
	margin-bottom:.0001pt;
	text-align:justify;
	mso-pagination:widow-orphan;
	page-break-after:avoid;
	mso-outline-level:7;
	font-size:11.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;
	mso-ansi-language:EN-GB;
	font-style:italic;
	mso-bidi-font-style:normal;}
p.MsoHeading8, li.MsoHeading8, div.MsoHeading8
	{mso-style-next:Normal;
	margin-top:0in;
	margin-right:-.35pt;
	margin-bottom:0in;
	margin-left:0in;
	margin-bottom:.0001pt;
	text-align:justify;
	mso-pagination:widow-orphan;
	page-break-after:avoid;
	mso-outline-level:8;
	font-size:14.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;
	mso-ansi-language:EN-GB;
	text-decoration:underline;
	text-underline:single;}
p.MsoHeading9, li.MsoHeading9, div.MsoHeading9
	{mso-style-next:Normal;
	margin-top:0in;
	margin-right:-.35pt;
	margin-bottom:0in;
	margin-left:0in;
	margin-bottom:.0001pt;
	text-align:center;
	mso-pagination:widow-orphan;
	page-break-after:avoid;
	mso-outline-level:9;
	font-size:11.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;
	mso-ansi-language:EN-GB;
	font-weight:bold;
	mso-bidi-font-weight:normal;}
p.MsoIndex1, li.MsoIndex1, div.MsoIndex1
	{mso-style-update:auto;
	mso-style-next:Normal;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:11.0pt;
	margin-bottom:.0001pt;
	text-indent:-11.0pt;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	mso-bidi-font-size:10.5pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;}
p.MsoIndex2, li.MsoIndex2, div.MsoIndex2
	{mso-style-update:auto;
	mso-style-next:Normal;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:22.0pt;
	margin-bottom:.0001pt;
	text-indent:-11.0pt;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	mso-bidi-font-size:10.5pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;}
p.MsoIndex3, li.MsoIndex3, div.MsoIndex3
	{mso-style-update:auto;
	mso-style-next:Normal;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:33.0pt;
	margin-bottom:.0001pt;
	text-indent:-11.0pt;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	mso-bidi-font-size:10.5pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;}
p.MsoIndex4, li.MsoIndex4, div.MsoIndex4
	{mso-style-update:auto;
	mso-style-next:Normal;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:44.0pt;
	margin-bottom:.0001pt;
	text-indent:-11.0pt;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	mso-bidi-font-size:10.5pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;}
p.MsoIndex5, li.MsoIndex5, div.MsoIndex5
	{mso-style-update:auto;
	mso-style-next:Normal;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:55.0pt;
	margin-bottom:.0001pt;
	text-indent:-11.0pt;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	mso-bidi-font-size:10.5pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;}
p.MsoIndex6, li.MsoIndex6, div.MsoIndex6
	{mso-style-update:auto;
	mso-style-next:Normal;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:66.0pt;
	margin-bottom:.0001pt;
	text-indent:-11.0pt;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	mso-bidi-font-size:10.5pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;}
p.MsoIndex7, li.MsoIndex7, div.MsoIndex7
	{mso-style-update:auto;
	mso-style-next:Normal;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:77.0pt;
	margin-bottom:.0001pt;
	text-indent:-11.0pt;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	mso-bidi-font-size:10.5pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;}
p.MsoIndex8, li.MsoIndex8, div.MsoIndex8
	{mso-style-update:auto;
	mso-style-next:Normal;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:88.0pt;
	margin-bottom:.0001pt;
	text-indent:-11.0pt;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	mso-bidi-font-size:10.5pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;}
p.MsoIndex9, li.MsoIndex9, div.MsoIndex9
	{mso-style-update:auto;
	mso-style-next:Normal;
	margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:99.0pt;
	margin-bottom:.0001pt;
	text-indent:-11.0pt;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	mso-bidi-font-size:10.5pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;}
p.MsoFootnoteText, li.MsoFootnoteText, div.MsoFootnoteText
	{margin:0in;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;}
p.MsoHeader, li.MsoHeader, div.MsoHeader
	{margin:0in;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	tab-stops:center 207.65pt right 415.3pt;
	font-size:11.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;}
p.MsoFooter, li.MsoFooter, div.MsoFooter
	{margin:0in;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	tab-stops:center 207.65pt right 415.3pt;
	font-size:11.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;}
p.MsoIndexHeading, li.MsoIndexHeading, div.MsoIndexHeading
	{mso-style-next:"Index 1";
	margin-top:12.0pt;
	margin-right:0in;
	margin-bottom:6.0pt;
	margin-left:0in;
	text-align:center;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	mso-bidi-font-size:15.5pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;
	font-weight:bold;}
span.MsoFootnoteReference
	{vertical-align:super;}
span.MsoEndnoteReference
	{vertical-align:super;}
p.MsoEndnoteText, li.MsoEndnoteText, div.MsoEndnoteText
	{margin:0in;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:10.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;}
p.MsoTitle, li.MsoTitle, div.MsoTitle
	{margin:0in;
	margin-bottom:.0001pt;
	text-align:center;
	mso-pagination:widow-orphan;
	font-size:12.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:windowtext;
	font-weight:bold;
	mso-bidi-font-weight:normal;}
p.MsoBodyText, li.MsoBodyText, div.MsoBodyText
	{margin-top:0in;
	margin-right:-.35pt;
	margin-bottom:0in;
	margin-left:0in;
	margin-bottom:.0001pt;
	text-align:justify;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;
	mso-ansi-language:EN-GB;}
p.MsoBodyTextIndent, li.MsoBodyTextIndent, div.MsoBodyTextIndent
	{margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:13.5pt;
	margin-bottom:.0001pt;
	text-align:justify;
	text-indent:.65pt;
	mso-pagination:widow-orphan;
	mso-layout-grid-align:none;
	text-autospace:none;
	font-size:9.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;
	mso-ansi-language:EN-GB;}
p.MsoBodyText2, li.MsoBodyText2, div.MsoBodyText2
	{margin-top:0in;
	margin-right:-.35pt;
	margin-bottom:0in;
	margin-left:0in;
	margin-bottom:.0001pt;
	text-align:justify;
	mso-pagination:widow-orphan;
	border:none;
	mso-border-top-alt:solid windowtext 1.5pt;
	mso-border-bottom-alt:solid windowtext 1.5pt;
	padding:0in;
	mso-padding-alt:1.0pt 0in 1.0pt 0in;
	font-size:11.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;
	mso-ansi-language:EN-GB;}
p.MsoBodyText3, li.MsoBodyText3, div.MsoBodyText3
	{margin:0in;
	margin-bottom:.0001pt;
	text-align:justify;
	mso-pagination:widow-orphan;
	font-size:9.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;
	mso-ansi-language:EN-GB;}
p.MsoBodyTextIndent2, li.MsoBodyTextIndent2, div.MsoBodyTextIndent2
	{margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:13.5pt;
	margin-bottom:.0001pt;
	text-align:justify;
	mso-pagination:widow-orphan;
	mso-layout-grid-align:none;
	text-autospace:none;
	font-size:9.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;
	mso-ansi-language:EN-GB;}
p.MsoBodyTextIndent3, li.MsoBodyTextIndent3, div.MsoBodyTextIndent3
	{margin-top:0in;
	margin-right:0in;
	margin-bottom:0in;
	margin-left:.5in;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:9.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;}
p.MsoBlockText, li.MsoBlockText, div.MsoBlockText
	{margin-top:0in;
	margin-right:-.35pt;
	margin-bottom:0in;
	margin-left:3.5in;
	margin-bottom:.0001pt;
	text-align:justify;
	text-indent:-3.5in;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;}
a:link, span.MsoHyperlink
	{mso-style-parent:"";
	color:blue;
	text-decoration:underline;
	text-underline:single;}
a:visited, span.MsoHyperlinkFollowed
	{color:purple;
	text-decoration:underline;
	text-underline:single;}
strong
	{mso-bidi-font-weight:normal;}
em
	{mso-bidi-font-style:normal;}
p.MsoDocumentMap, li.MsoDocumentMap, div.MsoDocumentMap
	{margin:0in;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	background:navy;
	font-size:11.0pt;
	mso-bidi-font-size:10.0pt;
	font-family:Tahoma;
	mso-fareast-font-family:"Times New Roman";
	mso-bidi-font-family:"Times New Roman";
	color:black;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
	{margin:0in;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:10.0pt;
	font-family:"Courier New";
	mso-fareast-font-family:"Times New Roman";
	mso-bidi-font-family:"Times New Roman";
	color:windowtext;
	mso-ansi-language:EN-GB;}
p
	{margin-right:0in;
	mso-margin-top-alt:auto;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	mso-pagination:widow-orphan;
	font-size:12.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";
	color:black;}
span.Typewriter
	{mso-style-name:Typewriter;
	mso-style-parent:"";
	mso-ansi-font-size:10.0pt;
	mso-ascii-font-family:"Courier New";
	mso-hansi-font-family:"Courier New";}
span.l
	{mso-style-name:l;}
@page Section1
	{size:8.5in 11.0in;
	margin:1.0in 1.25in 1.0in 1.25in;
	mso-header-margin:.5in;
	mso-footer-margin:.5in;
	mso-paper-source:0;}
div.Section1
	{page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext="edit" spidmax="1027"/>
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext="edit">
  <o:idmap v:ext="edit" data="1"/>
 </o:shapelayout></xml><![endif]--><!--[if gte mso 9]><xml>
 <u1:DocumentProperties>
  <u1:Author> </u1:Author>
  <u1:Template>Normal</u1:Template>
  <u1:LastAuthor> </u1:LastAuthor>
  <u1:Revision>1</u1:Revision>
  <u1:TotalTime>0</u1:TotalTime>
  <u1:Created>2005-01-15T18:33:00Z</u1:Created>
  <u1:LastSaved>2005-01-15T18:33:00Z</u1:LastSaved>
  <u1:Pages>3</u1:Pages>
  <u1:Words>547</u1:Words>
  <u1:Characters>3119</u1:Characters>
  <u1:Company> </u1:Company>
  <u1:Lines>25</u1:Lines>
  <u1:Paragraphs>6</u1:Paragraphs>
  <u1:CharactersWithSpaces>3830</u1:CharactersWithSpaces>
  <u1:Version>9.2720</u1:Version>
 </u1:DocumentProperties>
</xml><![endif]--><!--[if gte mso 9]><xml>
 <u2:WordDocument>
  <u2:DisplayHorizontalDrawingGridEvery>0</u2:DisplayHorizontalDrawingGridEvery>
  <u2:DisplayVerticalDrawingGridEvery>0</u2:DisplayVerticalDrawingGridEvery>
  <u2:UseMarginsForDrawingGridOrigin/>
  <u2:Compatibility>
   <u2:FootnoteLayoutLikeWW8/>
   <u2:ShapeLayoutLikeWW8/>
   <u2:AlignTablesRowByRow/>
   <u2:ForgetLastTabAlignment/>
   <u2:LayoutRawTableWidth/>
   <u2:LayoutTableRowsApart/>
  </u2:Compatibility>
 </u2:WordDocument>
</xml><![endif]-->
</head>

<body bgcolor=silver lang=EN-US link=blue vlink=purple style='tab-interval:
.5in'>

<div class=Section1>

<div align=center>

<table border=0 cellpadding=0 width="80%" bgcolor=white style='width:80.0%;
 mso-cellspacing:1.5pt;background:white;mso-padding-alt:75.0pt 75.0pt 75.0pt 75.0pt'>
 <tr>
  <td width="100%" style='width:100.0%;padding:75.0pt 75.0pt 75.0pt 75.0pt'>
  <p class=MsoTitle align=left style='margin-left:1.0in;text-align:left'><span
  style='font-size:14.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  font-weight:normal;mso-bidi-font-weight:bold'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></p>
  <div align=center>
  <table border=0 cellspacing=0 cellpadding=0 width=432 style='width:4.5in;
   border-collapse:collapse;border:none;mso-border-alt:solid windowtext .5pt;
   mso-padding-alt:0in 5.4pt 0in 5.4pt'>
   <tr>
    <td width=492 valign=top style='width:368.75pt;border:solid windowtext .5pt;
    padding:0in 5.4pt 0in 5.4pt'>
    <p class=MsoTitle align=left style='text-align:left'><span
    style='font-size:14.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
    font-weight:normal;mso-bidi-font-weight:bold'><a href="QiPrograms.zip">Download
    Programs</a> <o:p></o:p></span></p>
    </td>
    <td width=492 valign=top style='width:368.75pt;border:solid windowtext .5pt;
    border-left:none;mso-border-left-alt:solid windowtext .5pt;padding:0in 5.4pt 0in 5.4pt'>
    <p class=MsoTitle align=left style='text-align:left'><span
    style='font-size:14.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
    font-weight:normal;mso-bidi-font-weight:bold'><a href="contents.htm">Go to
    Contents Page</a><o:p></o:p></span></p>
    </td>
   </tr>
  </table>
  </div>
  <p class=MsoTitle align=left style='margin-left:1.0in;text-align:left'><span
  style='font-size:14.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  font-weight:normal;mso-bidi-font-weight:bold'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></p>
  <p class=MsoTitle align=left style='margin-left:1.0in;text-align:left'><span
  style='font-size:14.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  font-weight:normal;mso-bidi-font-weight:bold'>Note that this HTML page was
  generated from Word 2000.<span style="mso-spacerun: yes">&nbsp; </span>Some
  of the code cannot be pasted into Qi. You are advised to download the program
  files through the above link.<o:p></o:p></span></p>
  <p class=MsoNormal align=center style='margin-left:.5in;text-align:center'><span
  style='font-size:18.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman"'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></p>
  <p class=MsoNormal align=center style='margin-left:.5in;text-align:center'><span
  style='font-size:18.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman"'>Appendix H<u3:p></u3:p></span></p>
  <p class=MsoNormal align=center style='margin-left:.5in;text-align:center'><span
  style='font-size:14.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman"'>&nbsp;<u3:p></u3:p></span></p>
  <p class=MsoNormal align=center style='margin-top:0in;margin-right:-.35pt;
  margin-bottom:0in;margin-left:.5in;margin-bottom:.0001pt;text-align:center;
  mso-outline-level:1'><span lang=EN-GB style='font-size:18.0pt;mso-bidi-font-size:
  10.0pt;font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'>The Qi<i> </i>Debugging Environment<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt;mso-outline-level:1'><b><u><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>&nbsp;<u3:p></u3:p></span></u></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt;text-align:justify;mso-outline-level:
  1'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>Qi is a fairly complex system to
  implement, and so during the course of its development, a number of debugging
  tools were built which found their way into the final release.<span
  style="mso-spacerun: yes">&nbsp; </span>This appendix details these tools.<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt;mso-outline-level:1'><b><u><span
  lang=EN-GB style='font-size:14.0pt;mso-bidi-font-size:10.0pt;font-family:
  "Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";mso-ansi-language:
  EN-GB'>&nbsp;<u3:p></u3:p></span></u></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt;mso-outline-level:1'><b><u><span
  lang=EN-GB style='font-size:14.0pt;mso-bidi-font-size:10.0pt;font-family:
  "Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";mso-ansi-language:
  EN-GB'>Tracking the Execution of a Qi<i> </i>Function_______<u3:p></u3:p></span></u></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt;text-align:justify'><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>&nbsp;<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt;text-align:justify'><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>This tool does the job of a LISP
  trace package, but the print routines are driven by Qi. <b>(track f)</b></span><span
  lang=EN-GB style='font-size:9.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'> </span><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>will cause a Qi<i> </i>function</span><span
  lang=EN-GB style='font-size:9.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'> </span><b><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>f</span></b><span lang=EN-GB
  style='font-size:9.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'> </span><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>to be tracked. When a function</span><span
  lang=EN-GB style='font-size:9.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'> </span><b><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>f</span></b><i><span lang=EN-GB
  style='font-size:9.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'> </span></i><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>is tracked, each time</span><span
  lang=EN-GB style='font-size:9.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'> </span><b><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>f</span></b><i><span lang=EN-GB
  style='font-size:9.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'> </span></i><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>is called, the inputs to</span><span
  lang=EN-GB style='font-size:9.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'> </span><b><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>f </span></b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'>are printed and so is the normal form</span><!--[if supportFields]><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'><span style='mso-element:field-begin'></span></span><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman"'>
  XE &quot;</span><b style='mso-bidi-font-weight:normal'><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'>normal form</span></b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman"'>&quot; </span><![endif]--><!--[if supportFields]><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'><span style='mso-element:field-end'></span></span><![endif]--><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'><span style="mso-spacerun:
  yes">&nbsp;</span>of the output</span><span lang=EN-GB style='font-size:9.0pt;
  mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'> </span><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'>f </span></b><span lang=EN-GB style='font-family:
  "Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";mso-ansi-language:
  EN-GB'>returns.</span><span lang=EN-GB style='font-size:9.0pt;mso-bidi-font-size:
  10.0pt;font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'> </span><b><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'>untrack </span></b><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>untracks a function. Figure H1.
  shows the factorial</span><!--[if supportFields]><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'><span style='mso-element:field-begin'></span></span><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman"'>
  XE &quot;</span><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'>factorial</span><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman"'>&quot;
  </span><![endif]--><!--[if supportFields]><span lang=EN-GB style='font-family:
  "Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";mso-ansi-language:
  EN-GB'><span style='mso-element:field-end'></span></span><![endif]--><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'><span style="mso-spacerun:
  yes">&nbsp;</span>function being tracked.<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt;text-align:justify'><span
  lang=EN-GB style='font-size:8.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'>&nbsp;<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'>(62-) (track factorial)<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'>factorial<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'>(63-) (factorial</span></b><!--[if supportFields]><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-begin'></span></span></b><b style='mso-bidi-font-weight:
  normal'><span style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman"'> XE &quot;</span></b><b style='mso-bidi-font-weight:normal'><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>factorial</span></b><b
  style='mso-bidi-font-weight:normal'><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman"'>&quot; </span></b><![endif]--><!--[if supportFields]><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-end'></span></span></b><![endif]--><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-bidi-font-weight:bold'><span style="mso-spacerun:
  yes">&nbsp;</span>3)<u3:p></u3:p></span></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'><span style="mso-spacerun: yes">&nbsp;
  </span>&lt;1&gt; Input to factorial</span></b><!--[if supportFields]><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-begin'></span></span></b><b style='mso-bidi-font-weight:
  normal'><span style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman"'> XE &quot;</span></b><b style='mso-bidi-font-weight:normal'><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>factorial</span></b><b
  style='mso-bidi-font-weight:normal'><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman"'>&quot; </span></b><![endif]--><!--[if supportFields]><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-end'></span></span></b><![endif]--><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'><span style="mso-spacerun: yes">&nbsp;&nbsp;
  </span>3 ==&gt; <u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'><span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;2&gt; Input to factorial</span></b><!--[if supportFields]><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-begin'></span></span></b><b style='mso-bidi-font-weight:
  normal'><span style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman"'> XE &quot;</span></b><b style='mso-bidi-font-weight:normal'><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>factorial</span></b><b
  style='mso-bidi-font-weight:normal'><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman"'>&quot; </span></b><![endif]--><!--[if supportFields]><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-end'></span></span></b><![endif]--><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-bidi-font-weight:bold'><span style="mso-spacerun:
  yes">&nbsp;</span><u3:p></u3:p></span></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'><span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp; </span>2<span style="mso-spacerun: yes">&nbsp;
  </span>==&gt; <span style="mso-spacerun: yes">&nbsp;</span><u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'><span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;3&gt; Input to factorial</span></b><!--[if supportFields]><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-begin'></span></span></b><b style='mso-bidi-font-weight:
  normal'><span style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman"'> XE &quot;</span></b><b style='mso-bidi-font-weight:normal'><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>factorial</span></b><b
  style='mso-bidi-font-weight:normal'><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman"'>&quot; </span></b><![endif]--><!--[if supportFields]><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-end'></span></span></b><![endif]--><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-bidi-font-weight:bold'><span style="mso-spacerun:
  yes">&nbsp;&nbsp;</span><span style="mso-spacerun: yes">&nbsp;</span><u3:p></u3:p></span></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'><span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>1
  ==&gt;<span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span><span
  style="mso-spacerun: yes">&nbsp;</span><u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'><span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;4&gt; Input
  to factorial</span></b><!--[if supportFields]><b style='mso-bidi-font-weight:
  normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-begin'></span></span></b><b style='mso-bidi-font-weight:
  normal'><span style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman"'> XE &quot;</span></b><b style='mso-bidi-font-weight:normal'><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>factorial</span></b><b
  style='mso-bidi-font-weight:normal'><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman"'>&quot; </span></b><![endif]--><!--[if supportFields]><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-end'></span></span></b><![endif]--><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-bidi-font-weight:bold'><span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="mso-spacerun:
  yes">&nbsp;</span><u3:p></u3:p></span></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'><span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  </span>0 ==&gt;<span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp; </span><span
  style="mso-spacerun: yes">&nbsp;</span><u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'><span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;4&gt; Output
  of factorial</span></b><!--[if supportFields]><b style='mso-bidi-font-weight:
  normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-begin'></span></span></b><b style='mso-bidi-font-weight:
  normal'><span style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman"'> XE &quot;</span></b><b style='mso-bidi-font-weight:normal'><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>factorial</span></b><b
  style='mso-bidi-font-weight:normal'><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman"'>&quot; </span></b><![endif]--><!--[if supportFields]><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-end'></span></span></b><![endif]--><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-bidi-font-weight:bold'><span style="mso-spacerun:
  yes">&nbsp;&nbsp;</span><span style="mso-spacerun: yes">&nbsp;</span><u3:p></u3:p></span></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'><span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  </span>==&gt; 1<span style="mso-spacerun: yes">&nbsp; </span><span
  style="mso-spacerun: yes">&nbsp;</span><u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'><span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>&lt;3&gt; Output of
  factorial</span></b><!--[if supportFields]><b style='mso-bidi-font-weight:
  normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-begin'></span></span></b><b style='mso-bidi-font-weight:
  normal'><span style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman"'> XE &quot;</span></b><b style='mso-bidi-font-weight:normal'><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>factorial</span></b><b
  style='mso-bidi-font-weight:normal'><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman"'>&quot; </span></b><![endif]--><!--[if supportFields]><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-end'></span></span></b><![endif]--><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-bidi-font-weight:bold'><span style="mso-spacerun:
  yes">&nbsp;</span><u3:p></u3:p></span></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'><span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>==&gt; 1 <u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'><span style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;
  </span>&lt;2&gt; Output of factorial</span></b><!--[if supportFields]><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-begin'></span></span></b><b style='mso-bidi-font-weight:
  normal'><span style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman"'> XE &quot;</span></b><b style='mso-bidi-font-weight:normal'><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>factorial</span></b><b
  style='mso-bidi-font-weight:normal'><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman"'>&quot; </span></b><![endif]--><!--[if supportFields]><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-end'></span></span></b><![endif]--><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-bidi-font-weight:bold'><span style="mso-spacerun:
  yes">&nbsp;</span><u3:p></u3:p></span></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'><span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>==&gt; 2<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt;mso-outline-level:1;tab-stops:
  list 0in'><b><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style="mso-spacerun: yes">&nbsp;</span>&lt;1&gt; Output of factorial</span></b><!--[if supportFields]><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-begin'></span></span></b><b style='mso-bidi-font-weight:
  normal'><span style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman"'> XE &quot;</span></b><b style='mso-bidi-font-weight:normal'><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>factorial</span></b><b
  style='mso-bidi-font-weight:normal'><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman"'>&quot; </span></b><![endif]--><!--[if supportFields]><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-end'></span></span></b><![endif]--><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt;mso-outline-level:1;tab-stops:
  list 0in'><b><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'>==&gt; 6<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'>(64-) (untrack factorial</span></b><!--[if supportFields]><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-begin'></span></span></b><b style='mso-bidi-font-weight:
  normal'><span style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman"'> XE &quot;</span></b><b style='mso-bidi-font-weight:normal'><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>factorial</span></b><b
  style='mso-bidi-font-weight:normal'><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman"'>&quot; </span></b><![endif]--><!--[if supportFields]><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-element:field-end'></span></span></b><![endif]--><b
  style='mso-bidi-font-weight:normal'><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style='mso-bidi-font-weight:bold'>)<u3:p></u3:p></span></span></b></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt'><b><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal align=center style='margin-left:.5in;text-align:center'><i><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>Figure H1.</span></i><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'><span
  style="mso-spacerun: yes">&nbsp; </span><i>Using the </i>Qi<i> Trace Program<u3:p></u3:p></i></span></p>
  <p class=MsoNormal align=center style='margin-left:.5in;text-align:center'><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-top:0in;margin-right:-.35pt;margin-bottom:
  0in;margin-left:.5in;margin-bottom:.0001pt;text-align:justify'><b><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>(step +)</span></b><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'> typed to the top level</span><!--[if supportFields]><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'><span style='mso-element:field-begin'></span></span><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman"'>
  XE &quot;</span><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'>top level</span><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman"'>&quot;
  </span><![endif]--><!--[if supportFields]><span lang=EN-GB style='font-family:
  "Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";mso-ansi-language:
  EN-GB'><span style='mso-element:field-end'></span></span><![endif]--><span
  lang=EN-GB style='font-size:9.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'><span
  style="mso-spacerun: yes">&nbsp;</span></span><span lang=EN-GB
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  mso-ansi-language:EN-GB'>will cause the tracking</span><!--[if supportFields]><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'><span style='mso-element:field-begin'></span></span><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman"'>
  XE &quot;</span><span lang=EN-GB style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'>tracking</span><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman"'>&quot;
  </span><![endif]--><!--[if supportFields]><span lang=EN-GB style='font-family:
  "Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";mso-ansi-language:
  EN-GB'><span style='mso-element:field-end'></span></span><![endif]--><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'><span style="mso-spacerun:
  yes">&nbsp;</span>package to pause after each</span><span lang=EN-GB
  style='font-size:9.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'> </span><b><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>Inputs to &#8230;</span></b><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'> and wait for a keystroke from</span><span
  lang=EN-GB style='font-size:9.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'> </span><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>the user.<span
  style="mso-spacerun: yes">&nbsp; </span>Typing</span><span lang=EN-GB
  style='font-size:9.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'> </span><b><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>^</span></b><span lang=EN-GB
  style='font-size:9.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'> </span><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>(abort)</span><span lang=EN-GB
  style='font-size:9.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";mso-ansi-language:EN-GB'> </span><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>at this point will abort the
  computation.<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Courier New";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify;mso-outline-level:
  1'><b><u><span style='font-size:14.0pt;mso-bidi-font-size:10.0pt;font-family:
  "Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman"'>Tracking Type
  Checking____________________<u3:p></u3:p></span></u></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman"'>&nbsp;<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman"'>The
  type checker can tracked in Qi.<span style="mso-spacerun: yes">&nbsp;
  </span>The type debugger is enabled by the command </span><b><span
  lang=EN-GB style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";mso-ansi-language:EN-GB'>(spy +)</span></b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman"'>
  and the debugger shows the result of each type rule successfully applied by
  the type checker. Figure H2. shows part of a sample script.<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>(1+) (spy +)<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>true<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>(2+) (define factorial<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'><span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  </span>{number - -&gt; number}<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'><span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>0
  -&gt; 1<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'><span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>X -&gt; (* X (factorial (- X
  1))))<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>====================================<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>Step 1. [1]<span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>50.03 secs, 4 refinements, 0 RPS<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>?- 0 : number<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>&gt;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>====================================<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>Step 2. [1]<span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>73.82 secs, 8 refinements, 0 RPS<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>?- 1 : number<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>1. 0 : number<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>&gt;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>====================================<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>Step 3. [1]<span style="mso-spacerun:
  yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>78.43 secs, 9 refinements, 0 RPS<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>?- ((* &amp;&amp;X) (factorial ((- &amp;&amp;X) 1))) :
  number<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>1. factorial : (number - -&gt; number)<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>2. &amp;&amp;X : number<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>&gt;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal align=center style='margin-left:.5in;text-align:center'><i><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>Figure H 2.<span style="mso-spacerun: yes">&nbsp;
  </span>Using spy to view the operation of the type checker<u3:p></u3:p></span></i></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>As with the trace package, typing </span><b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman"'>^</span></b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'> (abort) to the debugger prompt &gt; will abort the
  typechecking. </span><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman"'>(spy -)</span></b><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'> on the top level will turn off the type debugger.<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><span
  style='font-size:8.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-left:.5in'><b><u><span style='font-size:
  14.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman"'>Echoing
  Output____________________________<u3:p></u3:p></span></u></b></p>
  <p class=MsoNormal style='margin-left:.5in'><span style='font-family:"Courier New";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  layout-grid-mode:line'>The command <b>(debug &lt;any argument&gt;)</b> echoes
  terminal output to the file <b>debug.txt</b>. <b>(undebug &lt;any
  argument&gt;)</b> toggles this off.<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-left:.5in'><span style='font-size:8.0pt;
  mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";mso-bidi-font-family:
  "Times New Roman";layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-left:.5in'><b><u><span style='font-size:
  14.0pt;mso-bidi-font-size:10.0pt;font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman"'>Profiling
  Code_____________________________<u3:p></u3:p></span></u></b></p>
  <p class=MsoFootnoteText style='margin-left:.5in'><span style='font-family:
  "Courier New";mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-left:.5in;text-align:justify'><span
  style='font-family:"Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";
  letter-spacing:-.2pt;layout-grid-mode:line'>The command <b>(profile </b>f<b>)</b>
  profiles the function f. The command <b>(unprofile </b>f<b>)</b> unprofiles
  the function f by removing the profiling code. The command <b>(profile-results
  &lt;any argument&gt;) </b>produces a list of timings for all profiled
  functions, initializing all counters to zero. </span><span style='font-family:
  "Microsoft Sans Serif";mso-bidi-font-family:"Times New Roman";layout-grid-mode:
  line'>Figure H3. is a script of a session that profiles the time taken by the
  <b>raa</b> rule used in the propositional ATP of chapter 14.<u3:p></u3:p></span></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>(11+) (profile
  raa)<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>raa : (goals -
  -&gt; goals)<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>(12+)
  (time-proof pc_decision_procedure<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'><span
  style="mso-spacerun: yes">&nbsp;&nbsp; </span>[[s &lt;=&gt; [~ [[[p &lt;=&gt;
  [~ q]] &amp; [[~ p] &lt;=&gt; q]] <u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'><span
  style="mso-spacerun: yes">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  </span>&amp; [[p &lt;=&gt; q] &amp; [[~ p] &lt;=&gt; [~ q]]]]]]]<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'><span
  style="mso-spacerun: yes">&nbsp;&nbsp; </span>[s &amp; s])<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>Assuming<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>[s &lt;=&gt; [~
  [[[p &lt;=&gt; [~ q]] &amp; [[~ p] &lt;=&gt; q]] &amp; [[p &lt;=&gt; q] &amp;
  [[~ p] &lt;=&gt; [~ q]]]]]]<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>Attempting to
  prove [s &amp; s].<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>0.0801152 secs,
  3271 refinements, 40829 RPS<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>true : boolean<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>(13+)
  (profile-results all)<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>raa, 0.0100144
  secs<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>profiled :
  symbol<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>(14+)<span
  style="mso-spacerun: yes">&nbsp; </span>(unprofile raa)<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>raa : (goals -
  -&gt; goals)<u3:p></u3:p></span></b></p>
  <p class=MsoNormal style='margin-left:.5in'><b><span style='font-family:"Microsoft Sans Serif";
  mso-bidi-font-family:"Times New Roman";layout-grid-mode:line'>&nbsp;<u3:p></u3:p></span></b></p>
  <p class=MsoNormal align=center style='margin-left:.5in;text-align:center'><i><span
  style='font-family:"Microsoft Sans Serif";layout-grid-mode:line'>Figure
  H3.<span style="mso-spacerun: yes">&nbsp; </span>Using the Profiler<u3:p></u3:p></span></i></p>
  <span style='font-size:12.0pt;font-family:"Times New Roman";mso-fareast-font-family:
  "Times New Roman";color:black;mso-ansi-language:EN-US;mso-fareast-language:
  EN-US;mso-bidi-language:AR-SA;layout-grid-mode:line'><br clear=all
  style='mso-special-character:line-break;page-break-before:always'>
  </span>
  <p><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></p>
  <p class=MsoNormal>&nbsp;<u3:p></u3:p></p>
  </td>
 </tr>
</table>

</div>

<p class=MsoNormal><span style='font-size:12.0pt'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></p>

</div>

</body>

</html>
